package com.zzw.mapper;

import com.zzw.entity.Product;
import com.zzw.page.Page;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @Project: warehouse
 * @Description: 商品接口
 * @Author: zzw
 */
public interface ProductMapper {

    // 查询商品总行数
    int selectProductCount(Product product);

    // 分页查询商品的方法
    List<Product> selectProductPage(@Param("page") Page page, @Param("product") Product product);

    // 添加商品
    int insertProduct(Product product);

    // 根据商品id修改商品的上下架状态
    int updateStateById(@Param("productId") Integer productId,@Param("upDownState")String upDownState);

    // 根据商品id删除商品
    int deleteProductById(Integer productId);

    // 根据商品id修改商品
    int updateProductById(Product product);

    //根据商品id增加商品库存的方法
    int addInventById(@Param("productId") Integer productId, @Param("invent") Integer invent);

    // 根据商品id查询商品
    Product selectProductById(Integer productId);

    // 批量删除商品
    int removeProductByIds(@Param("productIdList") List<Integer> productIdList);
}
